Multipoint digital simultaneous voice and data system

ABSTRACT

A multipoint conferencing system communicates with a first remote digital simultaneous voice and data (DSVD) modem and a second DSVD modem. The multipoint conferencing system has a first DSVD modem adapted to communicate with the first remote DSVD modem and a second DSVD modem adapted to communicate with the second remote DSVD modem. Each DSVD modem has an analog to digital converter and a digital signal processor coupled to the analog to digital converter for receiving data from the remote DSVD modems. The system also has a bridge coupled to the first and second DSVD modems for transferring data between the first and second remote DSVD modems. The bridge contains a speech decoder adapted to receive data from the first and second remote DSVD modems, first and second summers, a speech coder which is adapted to send data to the first and second remote DSVD modems, and a digital data router for collecting digital data from the first and second remote DSVD modems and forward the digital data to first remote DSVD modems, the second remote DSVD modems, or both. To convert the digital data back into the analog domain, the system has a sound generator or speaker, a microphone adapted to receive sound, and an acoustic echo cancelling system for minimizing echo feedbacks from the speaker. In addition to the multipoint DSVD system, a full duplex speaker telephone is also provided to handle voice only conferencing.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to data communication, equipment, and,more particularly, to a communication system involving simultaneousvoice and data modems.

2. Description of the Related Art

The growth of the personal computer industry is attributable in part tothe availability of inexpensive, yet powerful computers. Improvements inprocessor, memory, data storage and communications technologies haveresulted in computers which can provide sufficient processing capabilityfor audio visual applications such as computer-aided design,three-dimensional animation, and multimedia presentation for extendeddurations, even when users are at remote or relatively inaccessiblelocations.

The communication of digital information such as data over analogtransmission links such as telephone lines and trunks is known in theart. At the transmitting end of the link, a modem uses a representationof the digital information to modulate a carrier frequency and transmitsthe modulated carrier frequency on the transmission link. At thereceiving end of the link, another modem demodulates the carrierfrequency to retrieve the representation of the digital information, andreconstitutes the digital information therefrom. A pair of modems canthus engage in a communication protocol that includes control andsignalling to set up and terminate the communication connection.

The continuing development of computer and telephone communicationsystems requiring expanded data conversion and processing capabilities,however, is taxing the transmission capability of existing telephonenetworks in that separate lines are required for computer communicationsand for human conversations. To reduce this load, voice and data modemsrecently appeared which allow a voice communication channel to becarried out simultaneously with a data communication channel such thatboth channels appear as a single communication to the transmissionfacility that interconnects the modems. Simultaneous voice and modemdata transmitted over the same communications link between two sites hasbeen accomplished in several ways. The most common communications linksbetween two sites is the telephone line. The most common data handlingequipment to communicate over a communications link is the computermodem which modulates digital data onto a carrier for transmission inthe voice band of a telephone line. A wide variety of modulationsstandards promulgated by such international groups as ITU forcommunications in the voice band exist. In these schemes, the voicechannel is typically created by modulating a second carrier frequencywith the representation of the voice signals. Alternatively, a digitalimplementation of the voice and data modem allows voice signals to beencoded in digital form and the encoded voice and data are multiplexedfor transmission to the other side.

Currently, one simultaneous voice over data standard known as digitalsimultaneous voice and data (DSVD) is standardized in an InternationalTelecommunication Union specification ITU-T Recommendation V.70. DSVDimproves upon other simultaneous voice and data technologies byallocating bandwidth to both jobs with the ability to simultaneouslysupport voice transmission at 9.6 kilobauds per second on a standardtelephone line while the remaining bandwidth is available for datatransmission. Thus, by providing the ability for a single point-to-pointconnection to share user data and exchange voice at the same time, DSVDallows the simultaneous exchange of data and digitally encoded voicesignals over a single dial-up phone line. The voice quality isessentially the same as that provided over present phone lines. DSVDmodems use V.34 modulation which provides up to 33.6 kilobits persecond.

The arrival of the wide range of modems conforming to the DSVD standardeliminates in many cases the need for two separate phone lines (one forvoice, and one for data) when using collaborative applications such asdesktop personal conferencing or interactive games. However, with theincreasing number of organizations located in multiple sites, effectivegroup working requires communications facilities that can join togethermore than two locations. Multi-point communications provides such afacility for both audiovisual and data communications, overcomingcurrent point-to-point network constraints. The need for multiple DSVDconnections is essential when multiple users need to share the data andexchange voice simultaneously over the same link. However, present dayDSVD solutions do not support such multiple DSVD connection. Thus, aneed exists for low cost sharing of data and the exchange of voiceinformation at end-user premises.

SUMMARY OF THE INVENTION

The present invention facilitates the sharing of data and the exchangeof voice information over a network of DSVD modems, including a firstremote digital simultaneous voice and data (DSVD) modem and a secondremote DSVD modem. The multipoint conferencing system provides a firstDSVD modem adapted to communicate with the first remote DSVD modem and asecond DSVD modem adapted to communicate with the second remote DSVDmodem. Each DSVD modem has an analog to digital converter and a digitalsignal processor coupled to the analog to digital converter forreceiving data from the remote DSVD modems.

The system also provides a bridge which is connected to the first andsecond DSVD modems for transferring data between the first and secondremote DSVD modems. The bridge contains a speech decoder adapted toreceive data from the first and second remote DSVD modems, first andsecond summers, a speech coder which is adapted to send data to thefirst and second remote DSVD modems, and a digital data router forcollecting digital data from the first and second remote DSVD modems andforwarding the digital data to first remote DSVD modems, the secondremote DSVD modems, or both. To convert the digital data back into theanalog domain, the system has a sound generator or speaker, a microphoneadapted to receive sound, and an acoustic echo cancelling system forminimizing echo feedbacks from the speaker. In addition to themultipoint DSVD system, a full duplex speaker telephone is also providedto handle voice only conferencing.

Thus, the multipoint conferencing system of the present inventionenables the sharing of data and the exchange of voice information over anetwork of DSVD modems. The multi-point communication capability of thepresent invention facilitates both audiovisual and data communications,overcoming current point-to-point network constraints. The multiple DSVDconnections thus supports multiple users who need to share the data andexchange voice simultaneously over the same link. In this manner, thepresent invention provides an effective group working atmosphere usingcommunications facilities that can join together more than twolocations.

BRIEF DESCRIPTION OF THE DRAWINGS

A better understanding of the present invention can be obtained when thefollowing detailed description of the preferred embodiment is consideredin conjunction with the following drawings, in which:

FIG. 1 is a schematic diagram of a computer system supporting themultipoint digital simultaneous voice and data system of the presentinvention;

FIG. 2A is a diagram illustrating the operation of DSVD modems inconjunction with a bridge in the present invention;

FIG. 2B is a second embodiment of the multipoint digital simultaneousvoice and data system for connecting the computer of FIG. 1 with tworemote DSVD modems;

FIG. 3 is a block diagram illustrating in more detail the components ofthe multipoint digital simultaneous voice and data system of FIG. 2B;

FIG. 4A is a block diagram showing in more detail a speech decoder ofFIG. 3;

FIG. 4B is a block diagram showing in more detail a speech coder of FIG.3;

FIG. 5 is a block diagram illustrating in more detail an acoustic echocanceller of FIG. 3;

FIG. 6A is a state machine illustrating the operation of a pair ofdigital simultaneous voice and data modem;

FIG. 6B is a state machine illustrating the operation of the two remotedigital simultaneous voice and data modem in conjunction with the bridgeof the multipoint DSVD system of the present invention;

FIG. 7 is a block diagram of a full duplex speaker telephone operatingin conjunction with the multipoint DSVD system of the present invention;and

FIG. 8 is a diagram illustrating the software modules operating inconjunction with the operating system for the computer system of FIG. 1for supporting the multipoint DSVD system and the full duplex speakertelephone of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Turning now to the drawings, a computer system S supporting themultipoint DSVD conferencing capability of the present invention isdisclosed in FIG. 1. The computer system S of FIG. 1 deploys one or moreprocessors, preferably the Pentium Pro™ processor available from IntelCorporation located in Santa Clara, Calif. The Pentium Pro™ processorsreside on a processor card C which is plugged into one of the P6 slots100-102. The P6 slots 100-102 are connected to a 72-pin Pentium Pro™host bus called the P6 bus 103. The P6 bus 103 is a high performance buswhich preferably supports two processor cards mounted on slots 100-102.Preferably, each processor card C supports two Pentium Pro™ processors.Thus, the preferred embodiment supports up to four processors.

In addition to the processors, the P6 bus 103 is connected to a memorycontroller 104 and a data path device 106 which collectively form a DRAMcontrol subsystem. Preferably, the DRAM controller is an 82453GX and thedata path device 106 is an 82452GX, both of which are available fromIntel Corporation.

The DRAM controller 104 provides control and timing to the memorysubsystem, while the data path device 106 interfaces the 72-bit P6 hostbus to the memory array. The memory controller 104 and the data path 106are capable of taking a memory request from the CPU, queuing it, andresponding after the requested operation has completed. Additionally,the controller 104 provides memory error correction which is vital inerror-free applications, including the capability of single- bit errorcorrection and multi-bit error detection on the fly. The memorycontroller 104 can handle up to four gigabytes of page mode DRAM. Memoryarrangements having non-interleaved, ×2 and ×4 interleavingconfigurations are supported by the memory control sub-system.

A plurality of memory modules 110-112 are connected to memory slots 108to provide up to four gigabytes of memory. These modules often have astandard width of 9 bits, with a relevant number of times 1 or times 4chips, allocated to reach the indicated storage capacity, such as onemegabyte, four megabytes or 16 megabytes. Thus, a 1M×9 module maycomprise nine 1 Mb chips with the organization of 1Mb×1, or twofour-megabyte chips with the organization of 1Mb×9 for data, as well asone megabit chip with the organization of 1Mb×1 for parity information.The SIMM modules must be inserted into the intended sockets of thebanks. Internally, the modules often combine pair by pair or four byfour to realize a main memory with a data width of 16 or 32 bits. Thus,SIMM modules offer versatility in configuring the computer memory andare available in individual sizes from one megabyte to 64 megabytes perSIMM.

Usually, the RAM is divided into several banks, although it could alsobe made of memory modules such as single in-line memory modules orsingle in-line package. Each package has to be fully equipped withmemory chips, meaning that a main memory may extend it bank by bank—thememory of a partially-equipped bank will not be recognized by the PC.The CPU stores data and intermediate results, as well as programs, inits RAM and reads them later. For this, the processor has to tell thememory which data it wants to read prior to sending the memory andaddress, akin to the housed number of the data unit requested. Theaddress information is provided by an address bus to the CPU, and thetransfer of data from the RAM back to the CPU is performed using a databus. Generally, in computer terms, a bus means a number of lines throughwhich data and signals are transferred. Therefore, the address busconsists of 32-bit address lines in the case of 386, 486 or Pentiumprocessors. Furthermore, the data bus for these processors is also32-bits in width to improve the data transfer performance. Duringoperation, the actual performance of the memory subsystem will depend inpart on the mix of read and write operations and the memory accesspatterns for a given application. The controller 104 minimizes theimpact of the idle cycles by allowing read operations to bypass aroundthe write operations and be completed first as long as the memoryaddresses for the read/write pair do not match.

In addition to the memory controllers, a robust input/output system isneeded for the computer system S. The I/O subsystem designed for thesystem S must be scalable while meeting the performance requirements forthe four Pentium Pro™ processors. The PCI bus provides a combination ofhigh performance and scalable I/O for the demanding environment faced inhigh performance applications. To provide PCI connections, one or morePCI bridges 114 are connected to the P6 bus 103. The peer-to-peerarrangement of the PCI bus eliminates one or more levels of arbitrationpresent in the hierarchical arrangement, resulting in higher systemperformance.

Preferably, the PCI bridge 114 is an 82454GX PCI bridge (PB) from Intelwhich integrates the bus arbitration logic required to connect up to two82454GX PB components without any external glue logic. In the preferredembodiment, one PCI bridge is configured to be the compatibility PCIbridge by strapping options at power-up. This PCI bridge provides the PCcompatible path to the boot ROM and the EISA/ISA bus.

A second PCI bridge 114 a, called an auxiliary bridge, is configured bystrapping options to be the auxiliary PCI bridge. The auxiliary bridge114 a controlling the secondary PCI bus has an arbiter 120 whicharbitrates accesses to the host after the compatibility bridge 114 hasbeen serviced. Additionally, a system that requires more than two82454GX PBs must provide an external arbiter.

Normally, the arbitration for the processor bus is controlled by thecompatibility bridge, which will have a higher priority than theauxiliary bridge to ensure a proper response time for ISA bus masters.The plurality of PCI bridges 114 provides a plurality of PCI buses,which because of their direct connections to the P6 bus 103, providesinherently faster arbitration response than the alternative of cascadingPCI bridges together to provide for multiple PCI buses. This ability notonly provides for design flexibility, but also for redundant I/Ochannels for systems in which reliability is paramount.

As in the DRAM controller 104, the PCI bridge 114 supports a full 64-bitinterface to the CPU bus, including support for all protocols as well aserror correction. The PCI bridge 114 supports an 8-deep transactionin-order queue as well as separate 4-deep queues for both outbound(processor to PCI) and inbound (PCI to processor) transactions that arefor the I/O bus agent. Also, like the DRAM controller 104, the PCIbridge 114 provides four 32-byte data buffers in both the inbound andoutbound directions. The buffers decouple the host bus 103 from the PCIbuses 115-117 and optimize performance by allowing the posting of dataat full bus speeds in both directions. However, unlike the DRAMcontroller 104, the PCI bridge 114 supports up to two outstandingdeferred-reply requests. This feature allows a bus transaction to besplit and completed later, preventing the Pentium Pro™ P6 bus 103 frombecoming blocked by long latency I/O operations. In this mode, the PCIbridge 114 would defer Pentium Pro™ memory reads, I/O reads, I/O writes,and interrupt acknowledge transactions. However, memory writetransactions are not deferred since they are better optimized throughposting.

Attached to the secondary PCI bus 115 is a SCSI disk controller 116. TheSCSI controller 116 provides the capability of handling simultaneousdisk commands which is necessary in a multi-threaded, multi-taskingoperating system. Preferably, the SCSI controller 116 is a 53C825available from NCR Corporation. Attached to the 53C825 is one or moreSCSI connectors 118 which drives a plurality of disk drives adapted tosupport the host system's simultaneous issuance of multiple commands toone or more SCSI devices. The ability to overlap commands and queue thecommands to one or more devices can significantly boost performance inenvironments such as Windows 95 and NT. In addition to the SCSIcontroller 116, a plurality of devices may be plugged into the secondaryPCI bus 115 over a plurality of secondary PCI slots 122.

On the primary PCI bus 117, an interrupt controller 124 handlesinterrupt requests coming into the PCI bridge 114 for eventualtransmission to one of the processors in slots 100-102. The interruptcontroller 124 routes interrupt requests from devices located on PCIbuses 115-117 to the processors on slots 100-102 during multiprocessoroperation. Additionally, a number of PCI peripherals may be plugged intoa plurality of primary PCI slots 126.

An EISA system controller (ESC) 128, preferably the Intel 82374EBdevice, and a PCI-EISA bridge (PCEB) 130, preferably the Intel 82375EB,are also connected to the primary PCI bus 117. The ESC 128 and the PCEB130 must be connected to the primary PCI bus 117, as the auxiliary buscontroller must request arbitration from the compatibility buscontroller 114 on some operations. That added latency means that theauxiliary bus or secondary PCI bus 115 cannot meet PCI version 2.1latency specifications, and that EISA and ISA bus bridges have to be onthe compatibility bus or primary PCI bus 117.

The ESC 128 and the PCEB 130 work in tandem to provide an EISA I/Osubsystem interface for the computer system S. The combination of theESC 128 and the PCEB 130 provides an I/O subsystem capable of takingadvantage of the power of the PCI bus architecture while maintainingaccess to a large base of EISA and ISA expansion cards, and thecorresponding software applications.

With the inclusion of the ESC 128 and the PCEB 130, the system S nowcontains three levels of buses structured in the following hierarchy: aP6 bus 103 as the execution bus; an expansion bus system having aprimary and secondary PCI bus 115-117; and EISA or ISA bus as asecondary I/O bus. This bus hierarchy allows concurrency forsimultaneous operation on all three bus environments. Data bufferingpermits concurrency for operations that cross over into another busenvironment. The ESC 128 implements system functions such astimer/counter, DMA, interrupt controller, and EISA subsystem controlfunctions such as EISA bus controller and EISA bus arbiter. The PCEB 130provides the interface to the bridge between the PCI and EISA buses bytranslating bus protocols in both directions. It uses extensivebuffering on both the PCI and EISA interfaces to allow concurrent busoperations.

The ESC 128 and the PCEB 130 are connected to a plurality of EISA/ISAslots 132. Additionally, the ESC 128 also generates chip selects forcertain functions that typically reside on an X bus. The ESC 128generates chip select signals from an integrated system management unit(ISM) 158, a keyboard controller 156, a flash ROM 154, a non-volatileRAM 152, and a general purpose I/O device 144 which supports floppydrives, serial ports, and parallel ports over floppy connectors 146,serial connectors 148, and parallel connectors 150.

The EISA/ISA slots 132 have system data lines connected to the data busof the X bus via a buffer 134 which provides accesses to I/O devices aswell as the system BIOS in the flash ROM 154. Further, the EISA slots132 have system address lines that are connected to the address lines ofthe X bus via buffer 136. The EISA slots 132 have latched address lineswhich are connected to the system address lines via buffer 138. Finally,a video controller 140 is connected to the X bus address lines, theEISA/ISA slot 132 system data lines, and the latched address lines.Preferably, the video controller is a Cirrus Logic 5424 controller. Thevideo controller 140 is connected to a video RAM 142 which is preferably512 kilobytes in size.

The EISA/ISA slots 132 further receive one or more multipoint DSVDsystems 151 which are described in FIGS. 2A and 2B. Turning now to FIG.2A, a diagram illustrating one embodiment of the multi-point DSVDconferencing of the present invention is shown. In FIG. 2A, themulti-point DSVD system 151 has one or more DSVD modems 182, 186 and190. These DSVD modems are adapted to communicate with a plurality ofremote computers via their respective DSVD modems over a conventionaltelephone network 181, commonly referred to as a plain old telephoneservice (POTS) network. Each remote computer has a DSVD modem 180 or188. The multipoint DSVD system 151 includes an audio system for drivingspeakers and receiving input form the microphone as well as two or moremodems connected to two or more lines for accessing the POTS 181.

In FIG. 2A, the remote computer with the DSVD modem 180 communicatesover the POTS 181 to the first DSVD modem 182 of the multipoint DSVDsystem 151. Additionally, a second remote computer having the secondDSVD modem 188 communicates over the POTS 181 to the computer system Svia a second DSVD modem 186. The local computer system S furthersupports additional DSVD modems 190 to provide additional multi-pointteleconferencing capabilities as desired. Each of the DSVD modems 182,186, and 190 are connected to a bridge 184 which broadcasts or sharesdata to and from remote DSVD modems 180 and 188, resulting in a DSVDconferencing system that can handle a plurality of conferencingconnections.

A second embodiment of the present invention having a two remote pointDSVD conference capability is shown in FIG. 2B. In FIG. 2B, the add-onmulti-point DSVD modem 160 has a first digital signal processor (DSP)162 and a second DSP 166. The DSP 162 is connected to a firstcoder/decoder (CODEC) and data access arrangement (DAA) 164 to provide aconnection to the POTS 181 of FIG. 2A. Similarly, the second DSP 166 isconnected to a second CODEC and DAA device 168. The CODEC and DAAdevices 164 and 168 provide an interface to the POTS public switchtelephone network 181, as is conventional. Furthermore, the first andsecond DSP devices 162 and 166 are connected to an audio multiplexer andcontrol block 169 which supports the audio conferencing capability ofthe present invention.

Additionally, the DSP devices 162 and 166 are plugged to one of theEISA/ISA slots 132 to allow the devices 162 and 166 access to the ISAbus. Data generated by the DSP devices 162 and 166 are communicated overthe ISA bus to a controller module 170 having one or more hostcontrollers 172 and 174. Furthermore, the host controllers 172 and 174are also connected together so that they can transfer digitized audio aswell as digital data among the parties being conferenced together.

Turning now to FIG. 3, the multi-point DSVD conferencing system 160 ofFIG. 2B is shown in more detail. Multiplexed audio and data from theremote DSVD modem 180 is communicated over the analog telephone line ofthe POTS 181 to an A connector 200. Similarly, multiplexed audio anddata from the remote DSVD modem 188 is communicated over the analogtelephone line of the POTS 181 to an B connector 204. The data receivedat the A connector 200 and the B connector 204 are provided torespective analog to digital (A/D) converters 202 and 206. The digitizedsignal from the A/D converter 202 is sent to a DSP input portion 208which then demodulates that signal to produce a bit stream going to acontroller portion 209, which can be either a dedicated microcontrolleror the CPU of the computer system S. The controller portion 209demultiplexes the audio channel from the data channel and sends theaudio channels to a speech decoder 212, which is a part of a bridge 211.

Similarly, data from the second remote DSVD modem 188 is received at theB connector 204, which in turn sends the multiplexed audio plus datainformation to an A/D converter 206. The digitized data from theconverter 206 is provided to a DSP input portion 210 which demodulatesthat signal and sends the bit stream to a controller portion 213. Thecontroller portion 213, preferably the CPU C of the computer system S,then demultiplexes the audio channel from the data channel. Although theCPU C preferably performs the processing of incoming audio and datasignals, the present invention contemplates that dedicatedmicrocontrollers can be used to provide the processing capability aswell.

The audio channel output of the controller portion 211 of the DSP inputportion 210 is provided to the speech decoder 212 of the bridge 211. Thespeech decoder 212 then synchronizes and decodes the incoming audiochannel outputs. Further, the speech decoder 212 outputs are summed by asummer 220. In this manner, voices at the remote end are combined beforethey are sent to an audio CODEC 232 which drives a speaker 234 and amicrophone 235 which receives voice from the user U. Thus, the digitalaudio stream that comes out of the summer 220 is going through a digitalto analog converter in the CODEC 232 before it is submitted to thespeaker 234.

Meanwhile, the summed audio signal is sampled by a control logic block222 which forwards the summed audio output to an acoustic echo canceller230 in order to save a replica of the echo that may come back from thespeaker 234 into the microphone 235. By cancelling a replica of thesound generated by the speaker 234, the echo is subtracted from the userU's voice by a subtractor 236. Further, the error signal detected by thesubtractor 236 is sent back to the acoustic echo canceller 230 and thecontrol logic 222 for adaptation.

The output of the subtractor 236 is fed into a summer 238 of the bridge211 so that the user's voice or audio can be added to the remote users'voices. The summer 238 also receives the audio data received from the Aconnector 200. The output of the summer 238 is provided to a speechcoder 240 for compression and eventually delivered to the controllerportion 249. Similarly, the output of the subtractor 236 is provided toa second summer 239. The summer 239 also receives the audio datareceived from the B connector 204. The output of the summer 239 isprovided to the speech coder 240 for compression and eventuallydelivered to the controller portion 243. Thus, the output of the coder240 is presented to the appropriate controller portions 243 and 249 formultiplexing audio information with the appropriate data streams orchannels coming out of a digital data router 214. The data router 214receives digital signals from controller portions 209 and 211.

Once the audio and data channels have been multiplexed, the bit streamgoes to the DSP output sections 242 and 248 where the signals areconverted to analog streams or analog signals going back to theappropriate telephone line of the POTS 181.

Turning now to FIGS. 4A and 4B, the speech decoder 212 and the coder 240are shown in more detail. Speech coder and decoder are necessary manyspeech transmission and store and forward systems. Audio and voicecoding is used to compress audio and voice information for efficientstorage or transmission. Because the human ear detects sound from aminimum of about 5 hertz to a maximum of about 20 kilohertz, audiocoders encode signals up to 20 kilohertz and CD quality audio systemsprovide about 20 kilohertz of frequency band width. This relativelylarge bandwidth is desired for high fidelity music listening, especiallyfor classical music. However, the majority of audio information islocated in the lower half of the 20 kilohertz band. As human speechfrequency content is no longer present above frequencies around 7kilohertz, telephone lines only provide about 4 kilohertz of bandwidth.Hence, voice coders typically focus on a telephone bandwidth audiocompression at approximately 4 kilohertz. Some multimedia andteleconferencing applications provide higher voice quality than atelephone by offering 7 kilohertz of audio bandwidth.

After the coding/decoding operation, audio signals are then compressedand decompressed, respectively. Compression is achieved by removingpredictable, redundant or predetermined information from a signal.Quality and bit rate for speech coders vary from toll quality at 32kilobits per second (kbps) to intelligible quality at 2.4 kbps. Voicecoding techniques, such as full duplex 32 kbit/s ADPCM, CVSD, 16 kbits/ssub-band coders, and LPC, are frequently used with voice transmissionand storage. The speech coder preferably conforms to the ITU G.729Astandard. However, the ITU standard G.723 or G.729 can also be used. TheG.729 standard differs from the G.729A standard in the frame size. Asspecified by the ITU, the G.729A standard has a 8 kilobits per secondbit rate, with better quality than that provided by the ITU G.726standard. The DSVD voice/data multiplexing scheme is an extension of theV.42 error correction protocol used widely in modems today.

Turning now to FIG. 4A, the speech decoder 212 is shown in more detail.In general, the decoder 212 extracts parameter indices from the receivedbit stream. These indices are decoded to obtain coder parameterscorresponding to the speech frame. These parameters include LSPcoefficients, two fractional pitch delays, two fixed code book vectorsand two sets of adaptive and fixed code book gain values. The LSPcoefficients are interpolated and converted to a linear predictive (LP)filter coefficient for each frame. The operation of the speech coder 240and the speech coder 212 is illustrated in more detail in an ITUdocument entitled “Coding Of Speech At 8 bit/s Using Conjugate-StructureAlgebraic-Code-Excited Linear-Predication” (CS-ACELP) of theITU-Recommendation G.729 dated March, 1996, hereby incorporated byreference.

In FIG. 4A, input speech is provided to a pre-processing block 260.Further, the output of the pre-processing block is provided to a linearpredictive (LP) analyzer, quantizer, and interpolator 262. The LP code(LPC) information generated by the analyzer 262 is then provided to asynthesis filter 264. Furthermore, the output of the pre-processingblock 260 and the synthesis filter 264 are provided to a summer 266which sums the signals. The output of the summer 266 is then provided toa perceptual weighing unit 268, along with the LPC information. Theoutput of the perceptual weighing unit 268 is then provided to a fixedcode book search unit 270 as well as a pitch analyzer 272. The output ofthe pitch analyzer 272 is provided to an adaptive code book 274 as wellas to the synthesis filter 264. The output of the adaptive code book 274is provided to a buffer 276. Similarly, the output of the fixed codebook surge unit 270 is provided to a fixed code book 260 whose outputdrives a buffer 282. The output of the buffers 282 and 276 are providedto a summer 278 which generates an output back to the synthesis filterunit 264. Furthermore, the outputs of the pitch analyzer 272 and thefixed code book search unit 270 are provided to a gain quantizer 284.The output of the pitch and analyzer 272, the fixed codebook search unitand the gain quantizer 284, as well as the LPC information are providedto a parameter encoder 286 that generates a transmitted bit stream toeventually be received by the speech coder 240.

Turning now to FIG. 4B, the block diagram illustrating the speech coder240 is shown in more detail. The coder 240 is designed to operate with adigital signal obtained by first performing telephone bandwidthfiltering of the analog signal, then sampling it at 8 kilohertz,followed by conversion to a 16 bit linear pulse coded modulation (PCM)for the input to the encoder of FIG. 4A. The coder 240 is based on acode excited linear prediction (CLEP) coding model. The coder operateson speech frames of 10 milliseconds corresponding to 80 samples at asampling rate of 8,000 samples per second. For each frame, the speechsignal is analyzed to extract the parameters of the self-model (linearprediction filter coefficients, adaptive and fixed code book indices andgains). These parameters are encoded and transmitted. At the decoder212, these parameters are used to retrieve the excitation and synthesisfilter parameters. The speech is then reconstructed by filtering thisexcitation through the short term synthesis filter. Generally, the shortterm synthesis filter is based on a tenth order linear predictionfilter. The long term or pitch synthesis filter is implemented using anadaptive code book approach.

Referring now to FIG. 4B, the coder 240 has a fixed code book 260. Theoutput of the fixed code book 260 is provided to a buffer or amplifier290. Similarly, the coder 240 has an adaptive code book 274. The outputof the adaptive code book 274 is provided to a buffer 291. The output ofthe buffers 290 and 291 is summed using a summer 292, the output ofwhich is provided back to the adaptive code book 274 for adaptation andalso to a short term filter 294. The output of the short term filter 294is provided to a post processing circuit 296 for additional enhancementsas necessary.

FIG. 5 illustrates the acoustic echo canceller 230 in more detail. Innoise cancellation systems, an adaptive finite impulse response (FIR) ora sub-band filter is typically used to perform the noise modelingfunction and to adaptively cancel the echo caused by impedancemismatches in the telephone transmission line of the POTS 181 and echobetween the speaker output and the microphone input. As shown in FIG. 5,the acoustic echo canceller 230 has a subtractor 300 having a send-inport and a send-out port. The send-out port of the subtractor 300 isconnected to an echo estimator and control circuitry 302. The echoestimator and control circuitry 302 is also connected to the send-inport. Additionally, the acoustic echo canceller 300 has a receive-inport and a receive-out port. The receive-in port is connected to theecho estimator and control circuitry 302. The echo estimator and controlcircuitry block 302 is also connected to the subtractor block 300.

The acoustic echo canceller 230 of FIG. 5 essentially cancels out thesound generated by the speakers 234. The echo present at the input portof the echo canceller is a distorted and a delayed replica of theincoming speech from the speaker 234, as modified by the echo path. Theecho path is commonly described by an impulse response. This response ofa typical echo path shows a path delay T_(r) due to the delays inherentin the echo path transmission facilities, and a dispersed signal due toband limiting and multiple reflections. The sum of these is the echopath delay T_(d). The values of the delay and the dispersion variesdepending on the properties of the echo paths.

The echo canceller 230 of FIG. 5 synthesizes a replica of the echo pathimpulse response by retrieving the output of the adder 220 (FIG. 3).Further, when there is received speech and the nearer party begins todouble talk an echo canceller may interpret the transmit signal as a newecho signal and attempt to adapt to it. Preferably, the echo canceller230 of FIG. 5 uses an algorithm which causes a slow adaptation duringperiod of double talk. Further, the echo canceller 230 of FIG. 5preferably has a rapid convergence of 1½ second, subjectively low returnnoise level during a single talk of −50 db, and a low divergence duringdouble talk.

Turning now to FIG. 6A, the flow chart illustrating the operation of theoriginate and answer DSVD modems is shown in more detail. The statemachine illustrating the operation of the answer DSVD modem is shown inblock 400, while the state machine of the originate DSVD modem isillustrated in block 430. In block 400, initially the DSVD modem is in aCALL_CLEARED state 402. From state 402, in the event that the DSVD modemreceives a call while under an autoanswer mode, the DSVD modemtransitions from the CALL_CLEARED state 402 to a DSVD_DATA state 404.While in state 404, in the event that the data session is disconnected(DISC), the state machine of the DSVD modem transitions from state 404back to state 402. Furthermore, while in the DSVD data state 404, in theevent that an audio data link connection identifier (DLCI) is identifiedto indicate that both voice and data are being communicated, the statemachine for the DSVD modem transitions from state 404 to a DSVD state406. Once in the DSVD state 406, in the event that an audio disconnect(DISC) signal is received, the state machine of the DSVD modemtransitions back from the simultaneous voice/data communication mode ofthe DSVD state 406 back to the DSVD_DATA state 404 to receive only datatransmissions.

While in the DSVD state 406, in the event that a data DLCI disconnectsequence is received to indicate the termination of data transmission,the state machine of the DSVD modem transitions from the DSVD state 406to an ANALOG_VOICE_STATE 408. In the ANALOG_VOICE state 408, the DSVDcompatible devices simply switch the analog voice call to the down linephones, thus completing a normal phone connection. No data transmissiontakes place and the call can be terminated in the normal fashion byplacing the down-line phone on hook.

Further, while in the ANALOG_VOICE state 408, if a DSVD startup sequenceis detected indicating a request for simultaneous voice/datatransmission, the state machine of the DSVD modem transitions from state408 to the DSVD state 406. Alternatively, in the event that the statemachine of the DSVD modem is in the ANALOG_VOICE_STATE 408 and that anon-hook sequence is detected, the DSVD modem transitions from theANALOG_VOICE state 408 to the CALL_CLEARED state 402 where it awaits thenext communication by the user or the computer S. Furthermore, in theevent that the DSVD modem is already in the CALL_CLEARED state 402 andthat an off-hook signal is received, the DSVD modem transitions from theCALL_CLEARED state 402 back to the ANALOG_VOICE_STATE 408.

Thus, while in the DSVD state 406, when a disconnect (DISC) frame isreceived on the data DLCI frame, the DSVD modem completes an orderlyshut-down of both the audio DLCI and the data DLCI connections and thecall reverts to the ANALOG_VOICE state 408. Furthermore, while in theDSVD state 406, when the DISC frame is received on the audio DLCI, thecall transitions to the DSVD_DATA state 404. While in the DSVD_DATAstate 404, when an audio disconnect SABME frame is received on the audioDLCI, the call transitions to the DSVD state 406 and compressed audio ismultiplexed with data. While in the DSVD_DATA state 404, when the DISCframe is received on the data DLCI, the data connection is shut down andthe call is dropped.

The state machine 430 of the DSVD modem has four states: a CALL_CLEAREDstate 432, a DSVD_DATA state 434, and DSVD state 436 and an ANALOG_VOICEstate 438. Upon reset, the state machine of the host DSVD modem residesin the CALL_CLEARED state 432.

From the CALL_CLEARED state 432, in the event that a dial (ATD) sequenceis received, the DSVD modem transitions to the DSVD_DATA state 434. TheDSVD modem remains in this state as long as the on-hook signal is on.Alternatively, in the event that a hang-up (ATH) handshake signal isreceived, the DSVD modem transitions from the DSVD_DATA state 434 backto the CALL_CLEARED state 432.

Alternatively, in the event that an off-hook signal is received whilethe DSVD modem is in the DSVD_DATA state 434, the unit transitions tothe DSVD state 436. The DSVD modem remains in state 436 as long as theoff-hook signal is asserted. Alternatively, if an ATH signal isreceived, the DSVD modem transitions from the DSVD state 436 to theANALOG_VOICE state 438. In the ANALOG_VOICE state 438, the DSVDcompatible devices simply switch the analog voice call to the down linephones, thus completing a normal phone connection. No data transmissiontakes place and the call can be terminated in the normal fashion byplacing the down-line phone on hook.

From the ANALOG_VOICE state 438, if an ATD signal is received, the DSVDmodem transitions back to the DSVD 436 state. Alternatively, while inthe ANALOG_VOICE state 438, in the event that an on-hook signal isreceived, the DSVD modem transitions from the ANALOG_VOICE state 438back to the CALL_CLEARED state 432. In the DVSD state 436, the analogvoice signal from the down-line phone is sampled and digitallycompressed for transmission. The compressed voice data is thenmultiplexed with the user data using the V.42/LAPM datalink protocol andtransmitted to another DSVD capable unit. Using the extended function ofthe DSVD protocol, data and voice frames are transmitted using twological data channels over a single physical phone line using standardserial data function. Furthermore, the data and voice frames aremultiplexed using the V.42/LAPM protocol. the LAPM protocol provides formultiple logical channels between units using a single physicalconnection. Data and voice frame length are determined by parametersusing the DSVD start-up protocol.

Turning now to FIG. 6B, the operation of the state machines of FIG. 6Ain conjunction with the bridge 211 is shown in more detail. In FIG. 6A,state machine modules 401 and 403 representative of the state machine offirst and second connections are shown. The modem of the first DSVDconnection travels amongst previously described four states in themodule 401: a CALL_CLEARED state 452, a DSVD_DATA state 454, a DSVDstate 456, and an ANALOG_VOICE state 458. Similarly, the modem of thesecond DSVD connection travels amongst four states in the module 402: aCALL_CLEARED state 462, a DSVD_DATA state 464, a DSVD state 466, and anANALOG_VOICE state 468. Each of DSVD state 456 or 466 can be in one ofthe originate or answer DSVD state 406 or 436, as discussed in FIG. 6A.

Additionally, while in the DSVD state 456, in the event that amultipoint open DSVD sequence is initiated, the first DSVD modemtransitions from the DSVD state 456 to a BRIDGE_ON state 420 where datacan be shared in a multipoint manner with other DSVD modems using thebridge 211 of FIG. 3. Similarly, while in the DSVD state 466, in theevent an open DSVD bridge signal is received, the second DSVD modemtransitions to the BRIDGE_ON state 420 where the bridge 211 connects theDSVD modems together to provide a multilink connection. Furthermore,while in the BRIDGE_ON state 420, in the event that a close DSVD bridgesignal is received, the link between the DSVD sessions is disconnected,thus ending the multipoint session.

In addition to the multipoint DSVD system, a full duplex speakertelephone is also provided. As shown in FIG. 7, the full duplex speakerphone operates in parallel with the multipoint DSVD system of FIG. 3.From the audio CODEC 232 of FIG. 3, a subtractor 470 receives signalsfrom the microphone 235. Further, the subtractor 470 receives echoreplica from an acoustic echo canceller 472. The acoustic echo canceller472 receives audio signals at the output of a speaker volume adjust unit492 which drives the audio input of the audio CODEC 232.

The output of the subtractor 470 is provided to a transmit attenuator474 which controls the amplitude of the incoming signal from the audioCODEC 232. The transmit attenuator 476 in turn drives an amplifier 476.The output of the amplifier 476 is provided to an echo suppression unit478. The output of the echo suppression unit 478 is the input to thespeech coder 240 of FIG. 3.

The output of the echo suppression unit 478 and the band limited trainsignal generator 482 is further provided to a hybrid echo canceller 482.The output of the hybrid echo canceller 482 is provided to a secondsubtractor 484. The second subtractor 484 further receives an input fromthe output of the line CODEC 233. The output of the subtractor 484 isprovided to an automatic gain control (AGC) 486 and also as feedbacksignals to the hybrid echo canceller 482. The output of the AGC 486 isprovided to a receiver attenuator 488 which controls the amplitude ofthe signal going to the speaker volume control unit 492. The output ofthe AGC 486 is also provided to a double talk detector 494. The doubletalk detector 494 further receives the input to the transmit attenuatorunit 474. To control the units of FIG. 7, a control function module 490is provided.

Turning now to FIG. 8, a block diagram of major modules in the Windowssoftware supporting the multipoint DSVD system and the full duplexspeaker telephone system of the present invention is shown in moredetail. In FIG. 8, one or more data/fax and telephony applicationsoftware modules 500 communicate with a Windows application interfacelayer 502 via an application programming interface (API), which is adefined set of functions provided by the operating system for use by theapplication software 500. The Windows application interface layer 502typically resides at a ring 3 of the Windows 95 registered operatingsystem. Ring 3 eventually communicates to a more secure ring 0 of theWindows 95 operating system, as known to those skilled in the art.

On the other side of ring 0 is a VCOMM.V×D 504. The VCOMM.V×D 504 is avirtual device manager that manages all access to communicationresources. The port drivers typically use the VCOMM.V×D services toregister themselves and block others access to communications hardwarewhen they want to occupy the hardware. The VCOMM.V×D 504 furthercommunicates with a VCD.V×D 520 and a Serial.V×D 522. Other virtualdevice drivers, referred to as client V×Ds, use VCOMM services to accesscommunications resources as well.

In addition, a control panel 510 also exists at the ring 3 level ofWindows 95 operating system registry. The control panel 510 receivesinformation from the user for customizing a registry 508 which islocated at the ring 0 security level. The registry 508 is a structuredfile that stores index information describing the host system'shardware, user preferences and other configuration data. In Windows 95,the registry 508 reduces the proliferation of configuration files thatcan plague a Windows machine. The registry 508, in turn, communicateswith a unimodem.V×D 506. The unimodem .V×D 506 in turn communicates withthe VCOMM.V×D504.

The control panel 510 receives information entered by the user when theuser double clicks on a “Modems” icon in the Windows 95 control panel.The control panel allows users to install modems into the Windows 95registry 508 and configure the default settings. The input to thecontrol panel 510 is an INF file. The Windows 95 format INF text filespecifies the command set and the response code registry keys for one ormore modems. In this manner, the modem's control panel creates registrykeys for each modem that it installs from the modem information (INF)files. The modem control panel 510 thus reads the modem INF file tocreate modem registry keys.

Referring to the unimodem.V×D 506, it is both a telephone applicationprogramming interface (TAPI) service provider and a VCOMM device driver.The unimodem. V×D 506 translates TAPI function calls into AT commands toconfigure, dial and answer modems. The unimodem. V×D 506 further readsmodem commands from the modem registry keys created by the modem'scontrol panel 510. Thus, the unimodem.V×D506 reads the modem keys anddetermines the modem commands and response codes.

The VCOMM. V×D 504 also communicates with a multipoint DSVD driver 530.The driver 530 in turn includes a communication port 532. Thecommunication port drivers 532 are virtual devices (V×Ds) that thevirtual communications driver (VCOMM 504) uses to access communicationports. Port drivers for common serial and line printer devices areincluded with Windows 95. These port drivers are loaded either duringboot time or upon demand, depending on the version of Windows andwhether the port driver is plug and play compliant.

Additionally, the multipoint DSVD driver 530 includes a speech coder anddecoder module 534, an acoustic echo canceler 536, a multipoint DSVDinterface and control module 538, and one or more modem DSVD drivers 540and 542. These subcomponents of the module 530 in turn communicate to ahardware input/output port driver layer 544. The hardware I/O portdriver layer 544 in turn communicates with the actual multipoint DSVDsystem 151 which includes the audio system 550 for driving speakers andreceiving input form the microphone as well as two or more modems 552for accessing the POTS 181.

In sum, the bridge 184 (FIG. 2A) of the present invention and the firstand second DSVD modems 182 and 186 support the transmission of databetween the first and second remote DSVD modems 180 and 188. The bridge184 contains a speech decoder 212 adapted to receive data from the firstand second remote DSVD modems 180 and 188, first and second summers 220and 238, the speech coder 240 which is adapted to send data to the firstand second remote DSVD modems 180 and 188, and a digital data router 214for collecting digital data from the first and second remote DSVD modems180 and 188 and forwarding the digital data to first remote DSVD modems180, the second remote DSVD modems 188, or both. To convert the digitaldata back into the analog domain, the system has a sound generator orspeaker 234, a microphone 235 adapted to receive sound, and an acousticecho cancelling system 230 for minimizing echo feedbacks from thespeaker 234.

The disclosed multipoint system can hook up two lines or two parties toconverse with, if each party has a DSVD modem. Furthermore, themultipoint system can connect to yet another line, with considerationsto the physical limits of the host computer, such that multiple users atdifferent stations can communicate with each other with the multipointDSVD. Further, as the present invention shifts some of the work to theprocessor of the computer system S, such as the echo canceller, thespeech coder and decoder, the present invention provides a costeffective multipoint conferencing system.

Thus, the multipoint conferencing system of the present inventionenables the sharing of data and the exchange of voice information over anetwork of DSVD modems. The multi-point communication capability of thepresent invention facilitates both audiovisual and data communications,overcoming current point-to-point network constraints. The multiple DSVDconnections thus support multiple users who need to share the data andexchange voice simultaneously over the same link. In this manner, thepresent invention supports an effective group working atmosphere usingcommunications facilities that can join together more than twolocations.

The foregoing disclosure and description of the invention areillustrative and explanatory thereof, and various changes in the size,shape, materials, components, circuit elements, wiring connections andcontacts, as well as in the details of the illustrated circuitry andconstruction and method of operation may be made without departing fromthe spirit of the invention.

What is claimed is:
 1. A multipoint conferencing system forcommunicating with a first remote digital simultaneous voice and data(DSVD) modem and a second remote DSVD modem, said multipointconferencing system comprising: a first DSVD modem adapted tocommunicate with said first remote DSVD modem; a second DSVD modemadapted to communicate with said second remote DSVD modem; an audio/datasource adapted to communicate with said first remote DSVD modem and withsaid second remote DSVD modem; and a bridge coupled to said first andsecond DSVD modems and said audio/data source, said bridge transferringdata and digitized audio signal among said audio/data source, said firstDSVD remote modem by way of said first DSVD modem and said second remoteDSVD modem by way of said second DSVD modem.
 2. The multipointconferencing system of claim 1, wherein said first DSVD modem furthercomprises: an analog to digital converter; and a digital signalprocessor coupled to said analog to digital converter for receiving datafrom said first remote DSVD modem.
 3. The multipoint conferencing systemof claim 2, wherein each of said DSVD modems further comprises a digitalto analog converter coupled to said digital signal processor fortransmitting data to one of said remote DSVD modems.
 4. The multipointconferencing system of claim 1, wherein said second DSVD modem furthercomprises: an analog to digital converter; and a digital signalprocessor coupled to said analog to digital converter for receiving datafrom said second remote DSVD modem.
 5. The multipoint conferencingsystem of claim 1, wherein said bridge further comprises: a speechdecoder adapted to receive data from said first and second remote DSVDmodems; and a first summer coupled to the output of said speech decoder.6. The multipoint conferencing system of claim 5, further comprising: asecond summer coupled to said first summer; a speech coder coupled tosaid second summer, said speech coder adapted to send data to said firstand second remote DSVD modems.
 7. The multipoint conferencing system ofclaim 1, further comprising a digital data router, said digital datarouter adapted to collect digital data from said first and second remoteDSVD modems and forward said digital data to first remote DSVD modems,said second remote DSVD modems, or both.
 8. The multipoint conferencingsystem of claim 1, wherein said bridge further comprises: a speechdecoder adapted to receive data from said first and second remote DSVDmodems; a first summer coupled to the output of said speech decoder; asecond summer coupled to said first summer; a speech coder coupled tosaid second summer, said speech coder adapted to send data to said firstand second remote DSVD modems; and a digital data router, said digitaldata router adapted to collect digital data from said first and secondremote DSVD modems and forward said digital data to first remote DSVDmodems, said second remote DSVD modems, or both.
 9. The multipointconferencing system of claim 1, wherein said bridge has an audio outputand an audio input, further comprising: a sound generator coupled to theoutput of said bridge; a microphone adapted to receive sound; anacoustic echo cancelling system coupled to said microphone and to saidaudio output and input of said bridge.
 10. The multipoint conferencingsystem of claim 9, wherein said acoustic echo cancelling system furthercomprises: an echo canceller coupled to the output of said bridge; and asubtractor coupled to said microphone and said echo canceller, saidsubtractor removing echo associated with said sound generator.
 11. Themultipoint conferencing system of claim 1, wherein the audio/data sourcecomprises a third DSVD modem.
 12. The multipoint conferencing system ofclaim 1, wherein the audio/data source comprises a codec within themultipoint conferencing system.
 13. A computer system with a multipointconferencing system for communicating with a first remote digitalsimultaneous voice and data (DSVD) modem and a second remote DSVD modem,said multipoint conferencing system comprising: a processor; a memorycoupled to said processor; a display coupled to said processor; a datastorage device coupled to said processor; a first DSVD modem coupled tosaid processor, said first DSVD modem adapted to communicate with saidfirst remote DSVD modem; a second DSVD modem coupled to said processor,said second DSVD modem adapted to communicate with said second remoteDSVD modem; an audio/data source adapted to communicate with said firstDSVD modem and second DSVD modem; and a bridge coupled to saidprocessor, said first and second DSVD modems and said audio/data source,said processor activating said bridge to transfer voice and data amongsaid audio/data source, said first remote DSVD modem by way of saidfirst DSVD modem and said second remote DSVD modem by way of said secondDSVD modem in accordance with a predetermined sequence.
 14. The computersystem of claim 13, wherein said first DSVD modem further comprises: ananalog to digital converter; and a digital signal processor coupled tosaid analog to digital converter for receiving data from said firstremote DSVD modem.
 15. The computer system of claim 14, wherein each ofsaid DSVD modems further comprises a digital to analog converter coupledto said digital signal processor for transmitting data to one of saidremote DSVD modems.
 16. The computer system of claim 13, wherein saidsecond DSVD modem further comprises: an analog to digital converter; anda digital signal processor coupled to said analog to digital converterfor receiving data from said second remote DSVD modem.
 17. The computersystem of claim 13, wherein said bridge further comprises: a speechdecoder adapted to receive data from said first and second remote DSVDmodems; and a first summer coupled to the output of said speech decoder.18. The computer system of claim 17, further comprising: a second summercoupled to said first summer; a speech coder coupled to said secondsummer, said speech coder adapted to send data to said first and secondremote DSVD modems.
 19. The computer system of claim 13, furthercomprising a digital data router, said digital data router adapted tocollect digital data from said first and second remote DSVD modems andforward said digital data to first remote DSVD modems, said secondremote DSVD modems, or both.
 20. The computer system of claim 13,wherein said bridge further comprises: a speech decoder adapted toreceive data from said first and second remote DSVD modems; a firstsummer coupled to the output of said speech decoder; a second summercoupled to said first summer; a speech coder coupled to said secondsummer, said speech coder adapted to send data to said first and secondremote DSVD modems; and a digital data router, said digital data routeradapted to collect digital data from said first and second remote DSVDmodems and forward said digital data to first remote DSVD modems, saidsecond remote DSVD modems, or both.
 21. The computer system of claim 13,wherein said bridge has an audio output and an audio input, furthercomprising: a sound generator coupled to the output of said bridge; amicrophone adapted to receive sound; and an acoustic echo cancellingsystem coupled to said microphone and to said audio output and input ofsaid bridge.
 22. The computer system of claim 21, wherein said acousticecho cancelling system further comprises: an echo canceller coupled tothe output of said bridge; and a subtractor coupled to said microphoneand said echo canceller, said subtractor removing echo associated withsaid sound generator.
 23. The computer system of claim 13, wherein theaudio/data source comprises a third DSVD modem.
 24. The computer systemof claim 13, wherein the audio/data source comprises a codec within thecomputer system.
 25. A multipoint conferencing system for communicatingwith a first remote digital simultaneous voice and data (DSVD) modem anda second remote DSVD modem, said multipoint conferencing systemcomprising: a first DSVD modem adapted to communicate with said firstremote DSVD modem, said first DSVD modem further having: an analog todigital converter; and a digital signal processor coupled to said analogto digital converter for receiving data from said first remote DSVDmodem; a second DSVD modem adapted to communicate with said secondremote DSVD modem, said second DSVD modem having: an analog to digitalconverter; and a digital signal processor coupled to said analog todigital converter for receiving data from said second remote DSVD modem;a bridge coupled to said first and second DSVD modems for transferringdata and digitized audio signal between said first and second remoteDSVD modems via said first and second DSVD modems, said bridge furtherhaving: a speech decoder adapted to receive data from said first andsecond remote DSVD modems; a first summer coupled to the output of saidspeech decoder; a second summer coupled to said first summer; a speechcoder coupled to said second summer, said speech coder adapted to senddata to said first and second remote DSVD modems; and a digital datarouter, said digital data router adapted to collect digital data fromsaid first and second remote DSVD modems and forward said digital datato first remote DSVD modems, said second remote DSVD modems, or both; asound generator coupled to the output of said bridge; a microphoneadapted to receive sound; and an acoustic echo cancelling system coupledto said microphone and to said audio output and input of said bridge.26. A multipoint conferencing system for communicating with a firstremote digital simultaneous voice and data (DSVD) modem and a secondremote DSVD modem, said multipoint conferencing system comprising: afirst DSVD modem adapted to communicate with said first remote DSVDmodem; a second DSVD modem adapted to communicate with said secondremote DSVD modem; and a bridge coupled to said first and second DSVDmodems, said bridge transferring data and digitized audio signal betweensaid first and second remote DSVD modems by way of said first and secondDSVD modems, the bridge comprising: a speech decoder adapted to receivedata from said first and second remote DSVD modems; and a first summercoupled to the output of said speech decoder.
 27. The multipointconferencing system of claim 26, further comprising: a second summercoupled to said first summer; and a speech coder coupled to said secondsummer, said speech coder adapted to send data to said first and secondremote DSVD modems.
 28. A multipoint conferencing system forcommunicating with a first remote digital simultaneous voice and data(DSVD) modem and a second remote DSVD modem, said multipointconferencing system comprising: a first DSVD modem adapted tocommunicate with said first remote DSVD modem; a second DSVD modemadapted to communicate with said second remote DSVD modem; and a bridgecoupled to said first and second DSVD modems, said bridge transferringdata and digitized audio signal between said first and second remoteDSVD modems by way of said first and second DSVD modems, the bridgecomprising: a speech decoder adapted to receive data from said first andsecond remote DSVD modems; a first summer coupled to the output of saidspeech decoder; a second summer coupled to said first summer; a speechcoder coupled to said second summer, said speech coder adapted to senddata to said first and second remote DSVD modems; and a digital datarouter, said digital data router adapted to collect digital data fromsaid first and second remote DSVD modems and forward said digital datato first remote DSVD modems, said second remote DSVD modems, or both.29. A computer system with a multipoint conferencing system forcommunicating with a first remote digital simultaneous voice and data(DSVD) modem and a second remote DSVD modem, said multipointconferencing system comprising: a processor; a memory coupled to saidprocessor; a display coupled to said processor; a data storage devicecoupled to said processor; a first DSVD modem coupled to said processor,said first DSVD adapted to communicate with said first remote DSVDmodem; a second DSVD modem coupled to said processor, said second DSVDadapted to communicate with said second remote DSVD modem; and a bridgecoupled to said processor and to said first and second DSVD modems, saidprocessor activating said bridge to transfer voice and data between saidfirst and second remote DSVD modems by way of said first and second DSVDmodems in accordance with a predetermined sequence, the bridgecomprising: a speech decoder adapted to receive data from said first andsecond remote DSVD modems; and a first summer coupled to the output ofsaid speech decoder.
 30. The computer system of claim 29, furthercomprising: a second summer coupled to said first summer; a speech codercoupled to said second summer, said speech coder adapted to send data tosaid first and second remote DSVD modems.
 31. A computer system with amultipoint conferencing system for communicating with a first remotedigital simultaneous voice and data (DSVD) modem and a second remoteDSVD modem, said multipoint conferencing system comprising: a processor;a memory coupled to said processor; a display coupled to said processor;a data storage device coupled to said processor; a first DSVD modemcoupled to said processor, said first DSVD adapted to communicate withsaid first remote DSVD modem; a second DSVD modem coupled to saidprocessor, said second DSVD adapted to communicate with said secondremote DSVD modem; and a bridge coupled to said processor and to saidfirst and second DSVD modems, said processor activating said bridge totransfer voice and data between said first and second remote DSVD modemsby way of said first and second DSVD modems in accordance with apredetermined sequence, the bridge comprising: a speech decoder adaptedto receive data from said first and second remote DSVD modems; a firstsummer coupled to the output of said speech decoder; a second summercoupled to said first summer; a speech coder coupled to said secondsummer, said speech coder adapted to send data to said first and secondremote DSVD modems; and a digital data router, said digital data routeradapted to collect digital data from said first and second remote DSVDmodems and forward said digital data to first remote DSVD modems, saidsecond remote DSVD modems, or both.